This invention relates generally to waveform generation devices for use in electronic musical instruments, and it relates more particularly to waveform generation devices which generate a desired tone waveform by first storing, into waveform memory, tone waveform sample data in compressed form and then sequentially reading out the sample data from the waveform memory to perform predetermined operations on the sample data.
Among various waveform generation devices known today, there is a type which is generally arranged as follows. Namely, in such a waveform generation device, for every sample point of tone waveform data covering plural waveform cycles from start to end of tone generation, difference data indicative of an amplitude value difference between each adjacent pair of the sample points is expressed in floating point representation composed of mantissa and exponent data, and these difference data are stored at addresses of a waveform memory in correspondence to the sample points.
Then, once the pitch of a tone to be generated is designated via a keyboard, an address data generation circuit of the device generates address data sequentially changing at a rate corresponding to the designated tone pitch and provides the generated address data to the waveform memory. The waveform memory in turn sequentially reads out, from the addresses corresponding to the provided address data, the sample data composed of mantissa and exponent data.
After that, the mantissa and exponent data read out from the waveform memory are converted, by a floating-type digital-to-analog converter, from the floating point representation into analog real number values of the difference data. The thus-obtained real number values of the difference data are then accumulatively added or subtracted by an analog accumulator to provide analog tone waveform signals representative of waveform amplitude values for the respective sample points, which amplitude values are then supplied to a sound system to produce a tone.
The sample data compression as mentioned above is termed a floating-point-type differential pulse code modulation (DPCM). Such a waveform data compression technique using floating points is disclosed in Japanese Patent Publication No. HEI 4-3556 and U.S. Pat. No. 5,220,523.
However, because the above-mentioned prior art waveform generation device employs the floating-point-type DPCM to compress the sample data for storage in the waveform memory, there arises a problem that no tone waveform signal can be reproduced unless all the difference data for the respective adjacent pairs of samples points are sequentially read out and accumulatively added or subtracted by the analog accumulator.
Because of this arrangement, in order to produce a tone one octave higher than a currently produced tone, for example, the above-mentioned waveform generation device can not read out the sample data in a so-called "sample point skipped readout" fashion such as by advancing the waveform memory address to be accessed by two at a time. That is, with the device, a common set of the sample data can not be effectively employed for a wide pitch range, and it is of course impossible to reproduce only a selected part of the tone waveform signals.